package com.empire.module.member.dal.dataobject.mappolygon;

import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.empire.framework.mybatis.core.dataobject.BaseDO;

/**
 * 地图多边形信息 DO
 *
 * @author 主席大人
 */
@TableName("member_map_polygon")
@KeySequence("member_map_polygon_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class MapPolygonDO extends BaseDO {

    /**
     * 多边形ID（UUID）
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;
    /**
     * 关联配置ID（关联member_map_config.id）
     */
    private String configId;
    /**
     * 多边形名称
     */
    private String name;
    /**
     * 描边颜色（16进制色值）
     */
    private String strokeColor;
    /**
     * 描边宽度（单位：像素，范围：1~20）
     */
    private Integer strokeWeight;
    /**
     * 填充颜色（16进制色值）
     */
    private String fillColor;
    /**
     * 填充透明度（范围：0.00~1.00）
     */
    private BigDecimal fillOpacity;
    /**
     * 层级（值越大越靠上，范围：1~100）
     */
    private Integer roomLevel;
    /**
     * 排序（升序排列）
     */
    private Integer sortOrder;
    /**
     * 多边形面积（单位：平方米，自动计算）
     */
    private BigDecimal area;
    /**
     * 顶点数量（自动计算）
     */
    private Integer pointCount;

}